Go 字符串操作函数

strings 标准库提供了很多字符串操作相关的函数。这里提供的几个例子是让你先对这个包有个基本了解。

  1. package main
  2. import s "strings"
  3. import "fmt"
  4. // 这里给fmt.Println起个别名,因为下面我们会多处使用。
  5. var p = fmt.Println
  6. func main() {
  7. // 下面是strings包里面提供的一些函数实例。注意这里的函数并不是
  8. // string对象所拥有的方法,这就是说使用这些字符串操作函数的时候
  9. // 你必须将字符串对象作为第一个参数传递进去。
  10. p("Contains: ", s.Contains("test", "es"))
  11. p("Count: ", s.Count("test", "t"))
  12. p("HasPrefix: ", s.HasPrefix("test", "te"))
  13. p("HasSuffix: ", s.HasSuffix("test", "st"))
  14. p("Index: ", s.Index("test", "e"))
  15. p("Join: ", s.Join([]string{"a", "b"}, "-"))
  16. p("Repeat: ", s.Repeat("a", 5))
  17. p("Replace: ", s.Replace("foo", "o", "0", -1))
  18. p("Replace: ", s.Replace("foo", "o", "0", 1))
  19. p("Split: ", s.Split("a-b-c-d-e", "-"))
  20. p("ToLower: ", s.ToLower("TEST"))
  21. p("ToUpper: ", s.ToUpper("test"))
  22. p()
  23. // 你可以在strings包里面找到更多的函数
  24. // 这里还有两个字符串操作方法,它们虽然不是strings包里面的函数,
  25. // 但是还是值得提一下。一个是获取字符串长度,另外一个是从字符串中
  26. // 获取指定索引的字符
  27. p("Len: ", len("hello"))
  28. p("Char:", "hello"[1])
  29. }

运行结果

  1. Contains: true
  2. Count: 2
  3. HasPrefix: true
  4. HasSuffix: true
  5. Index: 1
  6. Join: a-b
  7. Repeat: aaaaa
  8. Replace: f00
  9. Replace: f0o
  10. Split: [a b c d e]
  11. ToLower: test
  12. ToUpper: TEST
  13. Len: 5
  14. Char: 101